/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package br.com.ufc.quixada.comandos;

import br.com.ufc.quixada.entidades.Exemplar;
import br.com.ufc.quixada.entidades.Filmes;
import br.com.ufc.quixada.interfaces.Comando;
import br.com.ufc.quixada.service.ExemplarService;
import br.com.ufc.quixada.service.FilmeService;
import java.util.ArrayList;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

/**
 *
 * @author micaellypriscilasoares
 */
public class CmdExibirCaracteristicasFilme implements Comando {

    @Override
    public String executa(HttpServletRequest request, HttpServletResponse response) {
        HttpSession session = request.getSession(true);
        long codigo = Long.parseLong(request.getParameter("codigofilme"));
        //instância da classe FilmeService
        FilmeService filmeserv = null;
        ExemplarService exmpserv = null;
        try {
            filmeserv = new FilmeService();
            exmpserv = new ExemplarService();
        } catch (ClassNotFoundException ex) {
            Logger.getLogger(CmdExibirCaracteristicasFilme.class.getName()).log(Level.SEVERE, null, ex);
        }
        
        //Aqui pega o Filme Selecionado
        Filmes filme = filmeserv.filmefindByCodigo(codigo);
        ArrayList<Exemplar> exemplares = exmpserv.exemplaresfindByFilme(codigo);
        if (filme == null) { //Aqui verifico se tem o filme cadastrado no banco
            session.setAttribute("erro", "Filmes não Cadastrados!!");
            return "/filmes.jsp";
        }

        if (exemplares.isEmpty()) { //Aqui verifico se tem exemplares cadastrado no banco
            session.setAttribute("erro", "Filmes disponivel em Breve!!");
            return "/filmesCliente.jsp";
        }
        
        
        //Aqui colocamos o filme utilizados em outra parte do sistema
        session.setAttribute("Filme", filme);
        session.setAttribute("ExemplaresFilme", exemplares);

        if(session.getAttribute("user") == null){
            return "/caracteristicasFilme.jsp";
        }else{
            return "/caracteristicasFilmeCliente.jsp";
        }
        
    }
}
